package LeetCode刷题;

/**
 * @program: Java_Study
 * @author: Xiaofan
 * @createTime: 2022-01-11 10:47
 * @description: Functions of this class is
 * 民间解法：
 * class Solution {
 *     public String decodeString(String s) {
 *         StringBuilder res=new StringBuilder();
 *         int muli=0;
 *         char c[]=s.toCharArray();
 *         Stack<Integer> stackMuli=new Stack<Integer>();
 *         Stack<String> stackRes=new Stack<String>();
 *         for(char cur:c){
 *             if(cur=='['){
 *                 //如果遇到左括号的话，先把前面算好的乘积给放进到mul栈中，还有就是把前面算到的字符串结果也放到栈中
 *                 stackMuli.push(muli);
 *                 stackRes.push(res.toString());
 *                 //然后初始化乘积数和字符串
 *                 muli=0;
 *                 res=new StringBuilder();//遇到一个左括号说明要进入一个新的转换区间，需要新建一个字符串对象
 *             }
 *             else if(cur==']'){
 *                 //如果遇到右括号，说明要将当前算好的乘积以及字符串算好，放入到最终答案中去
 *                 StringBuilder temp=new StringBuilder();//新建一个临时字符串
 *                 int curMuli=stackMuli.pop();//将上一次算好的乘积数取出
 *                 while(curMuli-->0){//进行字符串累加
 *                     temp.append(res);//把前面加进去的字符串按照数字的个数相乘！！！！！！！！！！！！！！别把cc给加进去了！！！
 *                 }
 *                 res=new StringBuilder(stackRes.pop()+temp);//然后将这次右括号内的答案加入到res中去
 *             }
 *             else if(cur>='0'&&cur<='9'){
 *                 //如果当前是数字的话,算到乘积数中去
 *                 muli=muli*10+(cur-'0');
 *             }
 *             else{
 *                 //如果是字符的话,则算到这一次的答案中去
 *                 res.append(cur);//直接加入到字符串中
 *             }
 *         }
 *         return res.toString();
 *     }
 * }
 **/
public class NoNoNo字符串解法 {

}